Introduction to the architecture of communication networks and the rudiments of performance modeling. Circuit switching, packet switching, hybrid switching, protocols, local and metro area networks, wide area networks and the Internet, elements of performance modeling, and network programming. Network security, asynchronous transfer mode (ATM), optical, wireless, cellular, and satellite networks, and their performance studies.
A. Leon Garcia and I. Widjaja, "Communication Networks - Fundamental Concepts and Key Architectures (2nd edn.)," McGraw Hill, 2004 (ISBN:0-07-246352-X) (Required).
A. S. Tanenbaum, "Computer Networks" (4th edn.), Prentice Hall, 2002 (ISBN: 0-13-066102-3) (Recommended).
W. Richard Stevens, "UNIX Network Programming, Volume 1: Networking APIs - Sockets and XTI", 2nd Edn., (ISBN: 0-13-490012-X), 1998 (Recommended).
Articles from recent journals and conferences and readings from other textbooks will also be made available, as necessary.
Prerequisites by Topic:
Mastery of fundamentals of computer organization.
Familiarity with processor communications and I/O.
Familiarity with elementary probability theory, data structures and algorithms.
Familiarity with computer programming.
Course Objectives:
Mastery of fundamentals of computer networks.
Mastery of network architectures for LAN/MAN/WAN.
Mastery of fundamentals of TCP/IP network protocols and routing/flow-control algorithms.
Familiarity with performance modeling, evaluation of network architectures and protocols.
Familiarity with simulation techniques and TCP/IP protocol-based software programming.
Exposure to high-speed ATM, SONET, cellular, wireless and optical WDM networks.
Topics Covered:
Uses of computer networks; network hardware; network software; protocol reference models; example networks; example data communications services; network standardization.
Circuit switching and packet switching, the telephone system.
Data link layer concepts: framing; error detection and correction; data link protocols; sliding window protocols; medium access control; IEEE 802 series LANs and MANs; bridges.
Internetworking and routing: routing algorithms; IP protocol and the Internet.
Transport layer services: congestion control algorithms; TCP and UDP.
DNS; SNMP; network services.
BSD socket programming in C; Java network programming.